Rename XS_GET_DOMAIN_PATH to XS_GET_DOMAIN_PATH and add libxenstore binding.
authorcl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>
Mon, 5 Sep 2005 16:00:03 +0000 (16:00 +0000)
committercl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>
Mon, 5 Sep 2005 16:00:03 +0000 (16:00 +0000)
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
tools/xenstore/xenstored.h
tools/xenstore/xenstored_core.c
tools/xenstore/xenstored_domain.c
tools/xenstore/xs.c
tools/xenstore/xs.h

index 441b95fecdec7f36bc748d2454e88fab0ff171e7..a0a291eb832337689b3eb6f6a8198b55c217fde8 100644 (file)
@@ -42,7 +42,7 @@ enum xsd_sockmsg_type
        XS_OP_READ_ONLY = XS_TRANSACTION_END,
        XS_INTRODUCE,
        XS_RELEASE,
-       XS_GETDOMAINPATH,
+       XS_GET_DOMAIN_PATH,
        XS_WRITE,
        XS_MKDIR,
        XS_RM,
index 79e3fa8776a6f9819e28c2e016b71406379f9992..4d9910030c72316bb0fb462a048cacbaa43d45dd 100644 (file)
@@ -140,7 +140,7 @@ static char *sockmsg_string(enum xsd_sockmsg_type type)
        case XS_TRANSACTION_END: return "TRANSACTION_END";
        case XS_INTRODUCE: return "INTRODUCE";
        case XS_RELEASE: return "RELEASE";
-       case XS_GETDOMAINPATH: return "GETDOMAINPATH";
+       case XS_GET_DOMAIN_PATH: return "GET_DOMAIN_PATH";
        case XS_WRITE: return "WRITE";
        case XS_MKDIR: return "MKDIR";
        case XS_RM: return "RM";
@@ -1277,7 +1277,7 @@ static void process_message(struct connection *conn, struct buffered_data *in)
                do_release(conn, onearg(in));
                break;
 
-       case XS_GETDOMAINPATH:
+       case XS_GET_DOMAIN_PATH:
                do_get_domain_path(conn, onearg(in));
                break;
 
index 764ed21f8ea5dd263351bf538e8a016fa2bae454..807a62fff42bec30fac61da2261b5b850b5c65c2 100644 (file)
@@ -389,7 +389,7 @@ void do_get_domain_path(struct connection *conn, const char *domid_str)
        if (!domain) 
                send_error(conn, ENOENT);
        else
-               send_reply(conn, XS_GETDOMAINPATH, domain->path,
+               send_reply(conn, XS_GET_DOMAIN_PATH, domain->path,
                           strlen(domain->path) + 1);
 }
 
index c49fded8ecca690b8f832a67463ab2faabe655af..ff31244166d629cf2c20b17f5897dfbc5b99f302 100644 (file)
@@ -613,6 +613,15 @@ bool xs_release_domain(struct xs_handle *h, domid_t domid)
        return xs_bool(xs_single(h, XS_RELEASE, domid_str, NULL));
 }
 
+char *xs_get_domain_path(struct xs_handle *h, domid_t domid)
+{
+       char domid_str[MAX_STRLEN(domid)];
+
+       sprintf(domid_str, "%u", domid);
+
+       return xs_single(h, XS_GET_DOMAIN_PATH, domid_str, NULL);
+}
+
 bool xs_shutdown(struct xs_handle *h)
 {
        bool ret = xs_bool(xs_single(h, XS_SHUTDOWN, "", NULL));
index a16c8209996ce22c372dd4a758a799b0ae0f2cbe..5999baaa00be5cf657375c25bd21aa7b0ef94526 100644 (file)
@@ -134,6 +134,10 @@ bool xs_introduce_domain(struct xs_handle *h, domid_t domid, unsigned long mfn,
  */
 bool xs_release_domain(struct xs_handle *h, domid_t domid);
 
+/* Query the home path of a domain.
+ */
+char *xs_get_domain_path(struct xs_handle *h, domid_t domid);
+
 /* Only useful for DEBUG versions */
 char *xs_debug_command(struct xs_handle *h, const char *cmd,
                       void *data, unsigned int len);